import urllib.request
from pathlib import Path

# 多条管道开启
# (1)定义管道类
# (2)在setting中添加优先级

class Pipelinedemo4DD1:
    def process_item(self, item, spider):
        url = 'http:' + item.get('img')        
        dir_path = Path('./logs/imgs/')  # 将路径对象初始化，相对路径解析，避免路径错误，同时可以跨平台兼容
        # 注意：Path 对象在转换为字符串时会自动规范化路径，移除冗余的尾部分隔符‌；
        # 因为 Path 类会将其视为文件名而不是目录名
        
        if not dir_path.exists():
            dir_path.mkdir(parents=True, exist_ok=True)  # 创建目录 (如果不存在)
        else:
            pass

        # 构建完整的文件路径，确保路径分隔符正确
        # 注意：通过 joinpath 方法来实现路径拼接，自动适配操作系统分隔符
        filename = dir_path.joinpath(item.get('title') + '.jpg')
        urllib.request.urlretrieve(url = url, filename = filename)
        
